package yh;

/**
 * BinarySearchArray(二分搜索数组)
 * 数组元素二分查找法，前提：已排序的数组
 */
public class BinarySearchArray {
    public static void main(String[] args) {
        //定义数组
        int[] arr={1,3,5,7,9,11,13};
        //定义查找目标数
        int target=3;
        //开始下标
        int head=0;
        //结束下标
        int end=arr.length-1;
        //标记是否找到元素
        boolean tag=false;
        //二分查找
        while(head<=end){
            int middle=(head+end)/2;
            if (arr[middle]==target) {
                System.out.println("查找到元素："+target+",下标为："+middle);
                tag=true;
                break;
            }else if (arr[middle]>target){
                end=middle-1;
            }else {
                head=middle+1;
            }
        }
        if(!tag){
            System.out.println("没有找到目标元素："+target);
        }
    }
}
